package com.ia.aistream.service.dxfcomponent;

import java.util.List;
import java.util.Map;

import com.ia.aistream.model.dxfcomponent.entity.DxfDraw;

/**
 * dxf文件索引信息Service接口
 * 
 * @author ymj
 * @date 2020-12-04
 */
public interface IDxfDrawService 
{
    /**
     * 查询dxf文件索引信息
     * 
     * @param drawId dxf文件索引信息ID
     * @return dxf文件索引信息
     */
    public DxfDraw selectDxfDrawById(Long drawId);

    /**
     * 查询dxf文件索引信息列表
     * 
     * @param dxfDraw dxf文件索引信息
     * @return dxf文件索引信息集合
     */
    public List<DxfDraw> selectDxfDrawList(DxfDraw dxfDraw);

    /**
     * 验证索引信息是否存在
     */
    public List<DxfDraw> checkDxfDrawList(DxfDraw dxfDraw);
    /**
     * 新增dxf文件索引信息
     * 
     * @param dxfDraw dxf文件索引信息
     * @return 结果
     */
    public int insertDxfDraw(DxfDraw dxfDraw);

    /**
     * 实现文件信息的解析
     * @return
     */
    public Map<String,Object> fileAnalysis(String FileName);
    /**
     * 修改dxf文件索引信息
     * 
     * @param dxfDraw dxf文件索引信息
     * @return 结果
     */
    public int updateDxfDraw(DxfDraw dxfDraw);

    /**
     * 批量删除dxf文件索引信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteDxfDrawByIds(String ids);

    /**
     * 删除dxf文件索引信息信息
     * 
     * @param drawId dxf文件索引信息ID
     * @return 结果
     */
    public int deleteDxfDrawById(Long drawId);

    /***
     * 根据文件ID，查询所有相关信息
     * @param drawId
     * @return
     */
    public Map<String, Object> getDxfDrawService(Long drawId);
}
